// 分频脉冲 Frequency pulse
module freq_div_in_pul #
(
    parameter    DIV_COEF  = 1000 // 分频系数
)
(
    input                           clk_50m, // 时钟频率50MHz
    input                           rst_n, // 复位信号，低电平有效
    input                           in_p, // 输入脉冲信号
    output reg                      out_p // 分频后输出信号
);

reg [15:0] div_cnt; // 分频计数器

// 用输入脉冲产生DIV_COEF倍分频输出脉冲
always @(posedge clk_50m) begin
    if (!rst_n) begin
        out_p <= 0;
        div_cnt <= 0;
    end else if (div_cnt < DIV_COEF - 1) begin
        out_p <= 0;
        if (in_p) begin
            div_cnt <= div_cnt + 1;
        end
    end else begin
        out_p <= 1;
        div_cnt <= 0;
    end
end

endmodule  //freq_div_in_pul